home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
CU Amiga Super CD-ROM 19
/
CU Amiga Magazine's Super CD-ROM 19 (1998)(EMAP Images)(GB)[!][issue 1998-02].iso
/
CUCD
/
Programming
/
LEDA
/
DaggeX
/
doc
/
daggex.doc
< prev
next >
Wrap
Text File
|
1993-12-08
|
6KB
|
185 lines
DaggeX 0.9
COPYRIGHT 1993 by Kari Mettinen and Leonard Norrgård.
This file contains ducumentation about what's different in DaggeX from the
'standard' MIT distribution.
But first a few general things about DaggeX0.9 distribution.
1) This release has been compiled for 68020 and better CPUs. There will be a
plain 68000 distribution later.
2) This release doesn't use as225 for TCP/IP communications. (this would be
DaggeX1.0 if it would ;)
3) This release does use AmiTCP for TCP/IP communications.
4) You don't need AmiTCP to run DaggeX locally.
5) Xhost doesn't work. Xauth does.
6) This is still beta.
Now with all that FAQish stuff done, lets get to the real stuff.
As you might guess, DaggeX is a port oof the MIT X11R5 Sample server. Most
things work the way it works in the MIT server, see X.doc and Xserver.doc
for general information. Most paths are different from the MIT distribution,
but I suggest you try to make the enviroment similar to the usual unix
enviroment. It will make things easier.
If you have gcc installed, I suggest you use /bin/x11 for binaries, and
usr/lib/X11 for misc stuff. A few paths are hardcoded to /usr/lib/x11
anyway.
Now the Amiga-specific commandline options.
-amitcp
This will tell DaggeX to try use AmiTCP for TCP/IP
communications. You must have AmiTCP running before running
DaggeX with this option. AmiTCP version used to compile DaggeX
was 2.1
-width <u_short>
This will tell DaggeX the width of the screen to run DaggeX on.
This will be overrun if asl-reqquester is used.
-height <u_short>
This will tell DaggeX the height of the screen to run DaggeX on.
This will be overrun if asl-requester is used.
-native
This will tell DaggeX to open the DaggeX screen with
OpenScreen() call, which will use the native chipset in the
most cases. This is the default.
-village
This will tell DaggeX to open the DaggeX screen to the
Picasso-II gfx-board.
-depth <u_char>
This will tell DaggeX the depth of the screen to be opened.
Currently only valid values are 1 and 8. '-native' means
'-depth 1' and it is the default. With village you must define
'-depth 8' on the command line.
About stack usage, I've used 300000 and it seems to be enough, less might be
enough too. I wouldn't go under 50000. But then who knows, that might work too.
(no I haven't done any stack-usage tests ;)
About priorities, it seems to be best to run server with a higher priority than
the clients. Clients should use the same priority because if a client is trying
to establish connection and has higher priority than the window-manager a
deadlock migh occur.
About Authorization, as said previously xhost don't work. Xauth does. Until
I get xhost working you should get to know how to use xauth. Xauth is quite
simple, you have a list that has addresses of machines with so called cookies.
When a client tries to connect to a server, it looks up the server-machines
address from the list and uses the cookie attached to the address for
authorization. When a server gets a request from a client that wants to
establish connection to the server, it gets the authorization cookie from the
request looks up the adress of the client machine, then looks up that
address-entry from the list and checks if the cookie in it's own list is the
same that's on the request from the client. If it is the same, the connection
is accepted, if not, it's refused.
An example:
at amiga.workstaion.running.daggex
you have for example enviroment variable XAUTHORITY set to foo:.xauthority
now when you start xauth on that machine you get a 'xauth>' promt.
xauth> list
localhost:0 MIT-MAGIC-COOKIE-1 6666
124.5.6.7:0 MIT-MAGIC-COOKIE-1 1122332211
xauth>
Now lets imagine that you'd want to run clients on a machine called
cray.ymp.running.xpilot . You'd do the following.
shell> nslookup cray.ymp.running.xpilot
123.45.67.89
shell> xauth
xauth> add 123.45.67.89:0 . 1122334455
xauth> list
localhost:0 MIT-MAGIC-COOKIE-1 6666
124.5.6.7:0 MIT-MAGIC-COOKIE-1 1122332211
123.45.67.89:0 MIT-MAGIC-COOKIE-1 1122334455
xauth> exit
Writing authority file /foo/.xauthority
shell>
Now on the cray.ymp.running.xpilot you'd do the following.
whatevershell$ nslookup amiga.workstation.running.daggex
128.54.32.1
whatevershell$ xauth
xauth> add 128.54.32.1:0 . 1122334455
xauth> exit
Writing authority file /tengigdisk/foo/.Xauthority
whatevershell$ xpilot -display amiga.workstation.running.daggex:0
The trick here is (as some of you might already have guessed) to have the same
cookie for both machines. In this case '1122334455'.
For more information about the subject, read manpages for xauth.
DaggeX uses Markus Wild's ixemul.library extensively. You should enable ixemul's
unix-type path translation. That means tell ixemul to use /usr/foo instead of
usr:foo .
BUGS
Inverted rectangles don't work properly with 8-bit displays when using
other colors than black and white.
Large GetImage() calls don't work with local communications, should
work ok with AmiTCP if DaggeX can get enough mem from the system. This
affects xwd.
There are some bugs on the clients side. Xedit dies if trying to use
^S or ^R (search), this crashes most of the times, but not always.
XBell() call has probles too.
TODO
as225 support. 15,16 and 24-bit support. bugfixes.
THANKS TO
Markus Wild for gcc and ixemul.library.
Leonard Norrgård for asl-requester code and numerous suggestions,
tests and general support. He was the first person to run DaggeX.
AmiTCP Group for AmiTCP.
Michael van Elst for compiling part of DaggeX, I only have 7M of memory.
Michael Balzer for debugging and Village Tronic connection.
Village Tronic Gmbh for support.
Everyone who has helped.